CloudFrontのキャッシュヒット率をCloudWatchアラームで通知させる方法
困っていた内容
CloudFrontの特定のディストリビューションで、キャッシュヒット率がn%以下になるとアラート通知する。のような、監視を設定する方法はありますか?
キャッシュヒット率の値は、CloudFrontのWebコンソール上にあるReports&analytics>Cache statisticsで確認できますが、CloudWatchにはメトリクスは存在しない為、もし可能であればやり方を教えて頂きたいです。
どう対応すればいいの?
CloudFrontのデフォルトではメトリクスは存在しませんが、追加のメトリクスを有効にすることでキャッシュヒット率(CacheHitRate)をメトリクスで取得できるようになります
追加のメトリクスを有効にするには
- AWS マネジメントコンソールにサインインし、CloudFront コンソールで [モニタリング] ページを開きます。
追加のメトリクスを有効にするディストリビューションを選択し、[View distribution metrics (ディストリビューションメトリクスの表示)] を選択します。
[Enable additional metrics (追加のメトリクスの有効化)] を選択します。
[Enable additional metrics (追加のメトリクスの有効化)] ウィンドウで、[Enable (有効化)] を選択し、[Save (保存)] を選択します。
上記の手順で追加のメトリクスを有効化すると、CloudWatchメトリクスにCacheHitRateのメトリクスが出力されるようになるので、CloudWatchアラームが利用できます。
これでキャッシュヒット率(CacheHitRate)を監視したい値でアラームを設定することが可能になりました。
追加のメトリクスを有効化するとわずかではありますが、CloudWatchの料金が追加で必要となりますので、料金ページを確認しておきましょう。